package com.aiyi.education.entity;


import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
* <p>
*
用户部门
* </p>
* <p>
* Created by  Generator on 2020/04/23
* </p>
* <p>

//表 ks_user_department 字段列表：
* </p>
* <p>
(depart_id , depart_ment_name , depart_ment_ename , parent_id , root , depth , order_id , parent_id_path , child , prev_id , next_id , class_dir , user_name , add_date , photo_url , intro , admin_purview )
* </p>
* <p>

//对象 KsUserDepartment 属性列表：
* </p>
* <p>
(departId , departMentName , departMentEname , parentId , root , depth , orderId , parentIdPath , child , prevId , nextId , classDir , userName , addDate , photoUrl , intro , adminPurview )
* </p>
* <p>

//表 ks_user_department 字段中文解释：
* </p>
* <p>
(depart_id="会员部门ID/INTEGER" , depart_ment_name="部门中文名称/VARCHAR" , depart_ment_ename="部门英文名称/VARCHAR" , parent_id="部门父ID/INTEGER" , root="级别/INTEGER" , depth="深度/TINYINT" , order_id="排序ID/INTEGER" , parent_id_path="父ID集/VARCHAR" , child="子部门数/INTEGER" , prev_id="上一个部门ID/INTEGER" , next_id="下一个部门ID/INTEGER" , class_dir="部门英文名称集/VARCHAR" , user_name="创始人/VARCHAR" , add_date="创建时间/TIMESTAMP" , photo_url="部门图片/VARCHAR" , intro="介绍/LONGVARCHAR" , admin_purview="权限/LONGVARCHAR" )
* </p>
* <p>

//对象 KsUserDepartment 属性解释：
* </p>
* <p>
(departId="会员部门ID/Integer" , departMentName="部门中文名称/String" , departMentEname="部门英文名称/String" , parentId="部门父ID/Integer" , root="级别/Integer" , depth="深度/Byte" , orderId="排序ID/Integer" , parentIdPath="父ID集/String" , child="子部门数/Integer" , prevId="上一个部门ID/Integer" , nextId="下一个部门ID/Integer" , classDir="部门英文名称集/String" , userName="创始人/String" , addDate="创建时间/Date" , photoUrl="部门图片/String" , intro="介绍/String" , adminPurview="权限/String" )
* </p>
* <p>

//对象 KsUserDepartment Json格式：
* </p>
* <p>
{"departId":"会员部门ID/Integer" , "departMentName":"部门中文名称/String" , "departMentEname":"部门英文名称/String" , "parentId":"部门父ID/Integer" , "root":"级别/Integer" , "depth":"深度/Byte" , "orderId":"排序ID/Integer" , "parentIdPath":"父ID集/String" , "child":"子部门数/Integer" , "prevId":"上一个部门ID/Integer" , "nextId":"下一个部门ID/Integer" , "classDir":"部门英文名称集/String" , "userName":"创始人/String" , "addDate":"创建时间/Date" , "photoUrl":"部门图片/String" , "intro":"介绍/String" , "adminPurview":"权限/String" }
* </p>


*/


@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("ks_user_department")
public class KsUserDepartment extends Model<KsUserDepartment> implements Serializable {
    /**
     * 会员部门ID
     */
     @TableId(value = "depart_id", type = IdType.AUTO)
    private Integer departId;

    /**
     * 部门中文名称
     */
     @TableField("depart_ment_name") 
    private String departMentName;

    /**
     * 部门英文名称
     */
     @TableField("depart_ment_ename") 
    private String departMentEname;

    /**
     * 部门父ID
     */
     @TableField("parent_id") 
    private Integer parentId;

    /**
     * 级别
     */
     @TableField("root") 
    private Integer root;

    /**
     * 深度
     */
     @TableField("depth") 
    private Byte depth;

    /**
     * 排序ID
     */
     @TableField("order_id") 
    private Integer orderId;

    /**
     * 父ID集
     */
     @TableField("parent_id_path") 
    private String parentIdPath;

    /**
     * 子部门数
     */
     @TableField("child") 
    private Integer child;

    /**
     * 上一个部门ID
     */
     @TableField("prev_id") 
    private Integer prevId;

    /**
     * 下一个部门ID
     */
     @TableField("next_id") 
    private Integer nextId;

    /**
     * 部门英文名称集
     */
     @TableField("class_dir") 
    private String classDir;

    /**
     * 创始人
     */
     @TableField("user_name") 
    private String userName;

    /**
     * 创建时间
     */
     @TableField("add_date") 
    private Date addDate;

    /**
     * 部门图片
     */
     @TableField("photo_url") 
    private String photoUrl;

    private static final long serialVersionUID = -8458972195631738783L;

    @Override
    public Serializable pkVal() {
         return this.departId;
    }
}